<?php

/**
* 本文件用来路由登录页面wp-login.php到/login
* 你需要在.htaccess文件做如下修改，记住，必须是紧接着的修改
* RewriteBase /
* RewriteRule ^login$ wp-login.php
* 经过改进，修改.htaccess的方法不再使用，而是换为了wordpress本身的路由，然而这必须是在后台点击更新固定链接之后才能生效，请看文章http://www.utubon.com/872
* 然而后来发现，上面的这种方式似乎只能进行一次，即你的博客只能完成一次重写，很复杂，总之在之后的很多情况下都没有成功，还是返回用.htaccess的方法
*/

add_filter('wp_redirect', 'login_url');
add_filter('network_site_url','login_url');
add_filter('site_url','login_url');

function login_url($url)
{
 $old  = array( "/(wp-login\.php)/");
 $new  = array( "login");
 return preg_replace( $old, $new, $url, 1);
}


register_activation_hook(__FILE__, 'wpa3537_flush_rules');
function wpa3537_flush_rules()
{
    add_rewrite_rule('^login?redirect_to=([^/]*)',"wp-login.php?redirect_to=$matches[1]",'top');
    flush_rewrite_rules(false);
}

add_filter('query_vars', 'wpa3537_query_vars');
function wpa3537_query_vars($query_vars)
{
    $query_vars[] = 'redirect_to';
    return $query_vars;
}
